package com.mingqijia.gassafety.webserver.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * <p>
 *
 * @author wanghai
 * @since 2022-02-23
 */

@Data
@ApiModel("客户绑定的设备列表")
public class ConsumerEquipmentResponse {


    @ApiModelProperty(value = "处理状态 0待处理 1工单处理中 2已处理 3工单处理完成 4-未办结 5-已办结 6-安装调试")
    private Integer applyStatus;

    @ApiModelProperty(value = "工单编号")
    private String orderNo = "";

    @ApiModelProperty(value = "工单生成时间")
    @JsonFormat(pattern = "yyyy年MM月dd日 HH:mm:ss", timezone = "GMT+8")
    private Date orderCreatedTime;

    @ApiModelProperty(value = "工单完成时间")
    @JsonFormat(pattern = "yyyy年MM月dd日 HH:mm:ss", timezone = "GMT+8")
    private Date orderCompleteTime;

    @ApiModelProperty(value = "处理结果")
    private String appealResult = "";

    @ApiModelProperty(value = "订单信息")
    private OrderInfoResponse orderInfoResponse;

    @ApiModelProperty(value = "设备id编号")
    private String equipmentId;

    @ApiModelProperty(value = "报警或故障id")
    private String id;

    @ApiModelProperty(value = "设备号")
    private String iMEI;

    @ApiModelProperty(value = "设备名")
    private String equipmentName;

    @ApiModelProperty(value = "设备名")
    private String name;

    @ApiModelProperty(value = "设备厂商")
    private String equipmentManufacturer;

    @ApiModelProperty(value = "设备类型")
    private String equipmentType;

    @ApiModelProperty(value = "设备类型")
    private String equipmentTypeName;

    @ApiModelProperty(value = "设备类型")
    private String equipmentTypeCode;

    @ApiModelProperty(value = "设备型号")
    private String equipmentModel;

    @ApiModelProperty(value = "设备型号（带设备厂家）")
    private String equipmentModelMa;
    @ApiModelProperty(value = "检测类型")
    private String detectionType;

    @ApiModelProperty(value = "设备位置")
    private String installationPosition;
    @ApiModelProperty(value = "设备位置")
    private String installDate;
    @ApiModelProperty("设备状态  0:离线 1:正常 2:低报 3:高报 4:故障 5:过期")
    private Object equipmentStatus;

    @ApiModelProperty("设备状态  0:离线 1:正常 2:低报 3:高报 4:故障 5:过期")
    private Object equipmentStatusName;
    @ApiModelProperty("设备状态信息")
    private String equipmentStatusInfo;

    @ApiModelProperty("设备状态")
    private String equipmentStatusAndInfo;

    @ApiModelProperty("设备故障信息")
    private String brokenReason;

    @ApiModelProperty(value = "运营商")
    private String operators;

    @ApiModelProperty(value = "通讯方式")
    private String communicationMode;

    @ApiModelProperty("最近一次上报时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date latestTime;

    @ApiModelProperty("电压")
    private Double voltage;


    @ApiModelProperty("模板一/二 : 主电电量百分比")
    private Integer mainBatteryValue;

    @ApiModelProperty("信号情况")
    private String signal;

    @ApiModelProperty("气体浓度")
    private String xLEL;

    @ApiModelProperty(value = "客户id编号")
    private Integer consumerId;

    @ApiModelProperty(value = "设备绑定时间")
    private String bindingTime;

    @ApiModelProperty(value = "点位数")
    private Integer point;

    @ApiModelProperty(value = "模板一: 户址 / 模板二: 安装地址")
    private String installationAddress;

    @ApiModelProperty(value = "模板一/二 :安装经度")
    private Double positionLon;

    @ApiModelProperty(value = "模板一/二 :安装纬度")
    private Double positionLat;

    @ApiModelProperty("接收器状态 0-离线,1-正常")
    private Object receiverStatus;
    @ApiModelProperty("阀门状态 0-开 1-关 2-故障 ")
    private Object valveStatus;

    @ApiModelProperty(value = "故障状态 0-否 1-是")
    private Integer brokenStatus;

    @ApiModelProperty(value = "电磁阀故障原因")
    private String brokenInfo;

    @ApiModelProperty(value = "是否存在电磁阀/接收机 false-不存在 true-存在")
    private Boolean withReceiver;

    @ApiModelProperty(value = "设备来源：0：默认 1：紫荆wifi设备")
    private Integer equipmentFrom;

    @ApiModelProperty(value = "设备上是否有电磁阀,与紫荆设备无关")
    private String hasValve;


    @ApiModelProperty(value = "电磁阀存在状态  1:无, 0有")
    private Integer valueExist;

    @ApiModelProperty(value = "电磁阀主键id")
    private Integer valveInfoId;

    @ApiModelProperty(value = "经纬度")
    private String lonLat;

    @ApiModelProperty(value = "电磁阀名称")
    private String valveName;
    @ApiModelProperty(value = "电磁阀型号")
    private String valveModel;
    @ApiModelProperty(value = "电磁阀材质")
    private String valveMaterial;
    @ApiModelProperty(value = "电磁阀厂家")
    private String valveManufacturer;

    @ApiModelProperty(value = "服务状态")
    private Integer serviceStatus;
    @ApiModelProperty(value = "服务状态")
    private String serviceStatusName;
    @ApiModelProperty(value = "服务信息")
    private String serviceInfo;
    @ApiModelProperty(value = "服务开始日期")
    private String startDate;
    @ApiModelProperty(value = "服务结束日期")
    private String endDate;

    @ApiModelProperty("是否绑定C端厨房 Y代表绑定 N代表没绑定")
    private String isBindC;

    @ApiModelProperty("是否删除客户 Y代表删除 N代表不删除")
    private String isDeleteConsumer;

    @ApiModelProperty(value = "探头数量")
    private Integer probeSum;
}
